package controllers.negocioPontoEletronico;

import java.sql.ResultSet;
import java.sql.SQLException;

import play.db.DB;

public class VerificarEntradasSaidas {

	public boolean verificarEntradaEmAberto(String user,long id) throws SQLException {
		// verifica se tem saida em aberto
		boolean pontoAberto = false;

		ResultSet rs = DB
				.executeQuery(" exec verificarEntradaAberto @usuario = '"+user +"' , @id =" + id);

		try {
			while (rs.next()) {
				pontoAberto = rs.getBoolean("pontoAberto");
			}
		} catch (Exception e) {
			System.out.println("ocorreu um erro inesperado");
		} finally {
			rs.close();
		}
		
		System.out.println("Abriu? " +pontoAberto);
		return pontoAberto;
	}

	public int verificarQuantidadeEntradas(String user, String dataAtual)
			throws SQLException {
		int totalEntradaDia = 0;
		// Recupera o total de entradas no dia
		ResultSet rs = DB
				.executeQuery("exec quantidadeEntradas @usuario = '"+ user +"' , @data = '" + dataAtual+"'");
		try {
			while (rs.next()) {
				totalEntradaDia = rs.getInt("soma");
			}
		} catch (Exception e) {
			System.out.println("ocorreu um erro inesperado");
		} finally {
			rs.close();
		}
		return totalEntradaDia;
	}

	public long retornarIdPontoAberto(String usuario) throws SQLException {
		long id = 0;
		// Recupera o total de entradas no dia
		ResultSet rs = DB
				.executeQuery("exec idPontoAberto @usuario = '" + usuario +"'");
		try {
			while (rs.next()) {
				id = rs.getInt("id");
			}
		} catch (Exception e) {
			System.out.println("ocorreu um erro inesperado");
		} finally {
			rs.close();
		}
		return id;
	}
}
